package pers.xx.sbm.config;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import pers.xx.sbm.interceptor.ConfigInterceptor;

/**
 * @author ：xiexing
 * @description：拦截器规则配置
 * @date ：2020/11/26 17:24
 */
@Configuration
public class WebMvcConf implements WebMvcConfigurer {


    /**
     * 注入第一步定义好的拦截器
     */
    @Autowired
    private ConfigInterceptor configInterceptor;


    /**
     * 定义拦截规则, 根据自己需要进行配置拦截和排除的接口
     */
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(configInterceptor)
                // .addPathPatterns() 是配置需要拦截的路径
                .addPathPatterns("/**")
                // .excludePathPatterns() 用于排除拦截
                .excludePathPatterns("/fileNotFound") //文件未找到
                .excludePathPatterns("/toLogin")
                .excludePathPatterns("/") // 排除127.0.0.1进入登录页
                .excludePathPatterns("/login") // 排除登录页获取验证码接口
                .excludePathPatterns("/getGifCode") // 排除验证账号密码接口
                .excludePathPatterns("/file/*") //文件操作类
                .excludePathPatterns("/report/*") //报告操作类
                .excludePathPatterns("/reportData/*") //报告数据操作类
                .excludePathPatterns("/reportDataCounty/*") //报告数据操作类
                .excludePathPatterns("/dyReportData/*") //德育报告数据操作类
                .excludePathPatterns("/dyReportCountyData/*") //德育报告数据操作类
//                .excludePathPatterns("/gyeducation/api/jfInformation")//教辅调研导航
                .excludePathPatterns("/static/**"); // 排除静态文件
    }


}
